/* 

==========================================================

DX490a - Summer 2010

Instructor: Stelios Manousakis

==========================================================

Class 2.3:

Extending SuperCollider with Quarks

Contents:

• Quarks

- About

- Downloading and keeping up-to-date

- Publishing a Quark

- Adding classes manually

- Some useful Quarks for the scope of this class (June 2010)

==========================================================

*/


// ================= QUARKS =================


// Quarks are third-party extensions to SC's library, documentation and UGen plugins. A Quark is a package containing SC classes (.sc file(s)), helpfiles (.html), possibly C++ source for UGens (.scx) and perhaps example, overview or other files. 

// When you download the full SC version, you get the entire Quarks library existing at the point of your download.


//Here's a link to the online quark repository:

"open http://quarks.sourceforge.net/".unixCmd



// ====== DOWNLOAD AND UPDATE ====== 


// ------ OSX and LINUX ------

Quarks.gui // use this command to install any quark via a GUI, then do what the GUI says


/* or, read here for different ways, and more info:

[Quarks]

*/



// ------ Windows -----

// to install quarks into windows machines look here (the method is different:

// http://swiki.hfbk-hamburg.de:8888/MusicTechnology/883



// ------ Publishing a Quark ------

// Read here as well if you want to publish a quark. You probably also want to consult the sc-users mailing list for naming conflicts...

// [Quark]



// ------ Adding classes manually ------


// Of course, you can also add or remove classes that you've downloaded or classes that you have created yourself:

 

// Class files are located in the SCCLassLibrary folder of your SuperCollider application directory:

"open SCCLassLibrary".unixCmd


// Help files are located in the same directory, inside the Help file:

"open Help".unixCmd 

// If you add help-files, you may have to recompile the help path for them to appear on the Help GUI. The command is:

Help.rebuildTree


// UGen plugin files are located inside the plugins file:

"open plugins".unixCmd



// Have a look here for more details on folder locations and extension file organization:

// [Using-Extensions]




// ====== SOME USEFUL QUARKS FOR THIS CLASS (as of June 2010) ====== 



// ======= large libraries ======= 

Ctk // Josh Parmenter's MUST-HAVE library

dewdrop // (huge library, some useful MIDI stuff, Patterns and other)

RedSys // (huge library, 'traditional' electronica toolkit)

wslib // (huge library, some MIDI, extensions, and the best looking GUI)




// ======= Interfacing ======= 

// Computer Peripherals

MultiTouchPad


// On-board laptop sensors

Laptop

RedInfoLmu

RedInfoSms

RedInfoBat


//Arduino

SCPyduino


// Sensors

SenseWorld

SenseWorldDataNetwork


// Haptic controllers

Dimple  // only partial implementation for now...


// tangible interfaces

TUIO




// ======= Open Sound Control ======= 

// OSC

OpenObject //OSC simplified


// Networking

NetLib

Republic

OscGroupClient //OSC through the internet



// ======= GUI and graphics ======= 

//GUI

Automation

ClockFace

FileListView

ixiViews

PopUpTreeMenu

TabbedView

VuView

wslib // a quark library with many - and the best looking - GUIs


// graphics

SCAnimation




// ======= Utilities and other ======= 

// Scheduling

DayTimer

ListeningClocks


// Presets

DataCollector (from SenseWorld)


// Statistics

extStatistics (from MathLib)

StatUGens (from SenseWorld)


// physical models

redUniverseExamplesOverview // redUniverse quark (huge library, with some amazing stuff)


// Bio-algorithmic goodies

NatureToolkit


// other

MP3 // read mp3's locally and on the net

ProcessTools // interact with UNIX

RedTapTempoGUI //from redSys

Spectrogram

TuningLib




// ======= Various audio (not the focus of this list) ======= 

// sampling

RedSampler // a giga-sampler-like Class


// Spatialization

Atk // Ambisonics (not released yet)

AmbIEM // binaural

SpeakersCorner //


// Builduing AUs

AudioUnitBuilder